( Google Apps Script ) Objectのキーに変数を使いたいんだが
GASを使っていた時のこと。 外部(APIやデータベース)から取得したデータを使ってObjectを生成しようとしてハマっていました。
例えば、
var key_name = "chiba" var collections = {key_name: {"name": "peanuts"}} >>log >>>> { key_name: { name: 'peanuts' } }
と、変数名が出力されてしまいました。
色々と調べていて、ES6から動的にObject内のプロパティを設定できるということがわかりました。
Computed property names
という機能名です。
[varibale]: value
という書き方で実現できるとのこと。
使用していたGASの環境ではChrome V8 ランタイムが有効
であったので、ひょっとしたらこの機能使えるかも ということで試してみたところ
var key_name = "chiba" var collections = { [key_name]: {"name": "peanuts"}} >>log >>>> { chiba: { name: 'peanuts' } }
できましたっ。
これで先に進める。
ただの備忘録でした。